﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;

namespace ProyectoVeranoAECAasp
{
    public partial class PrincipalAnidada : System.Web.UI.MasterPage
    {
        // - ATRIBUTOS DE CLASE -------------------------
        // - Atributo para cargar un menú según el tipo de usuario que se registre
        // Este menú se carga en la página maestra anidada una vez que se inicia sesión
        private String _opcionesMenuXUser;

        // - _tipoUsuario: Especifica el tipo de usuario que se logueó
        private int _tipoUsuario;


// - METODOS DE CLASE -------------------------
        protected void Page_Load(object sender, EventArgs e)
        {
            if (!IsPostBack)
            {
                String userid = (String)Session["UsuarioID"];
                //----
                if (userid == "" || userid == null)
                {
                    Response.Redirect("/Vistas/Autenticacion.aspx");
                }
                else
                {
                    //verificarTipoUsuario(_tipoUsuario);
                    if (Convert.ToInt32(Session["TipoUsuarioGlobal"]) == 1)
                        crearMenuSysAdmin();
                    else if (Convert.ToInt32(Session["TipoUsuarioGlobal"]) == 2) 
                        crearMenuAdmin();
                    else if (Convert.ToInt32(Session["TipoUsuarioGlobal"]) == 3) 
                    {
                        crearMenuFuncionario();
                    }
                }
            }
        }


        // - crearMenuSysAdmin: Crea un menu en la literal, si es un administrador del sistema.
        public void crearMenuSysAdmin()
        {
            // - Si es un Administrador del Sistema
            String htmlOpciones = String.Format(@"
                <li><a href='/Vistas/GestionUsuarios.aspx'>Gestión de usuarios</a></li>
                <li><a href='#'>Gestión de espacios manual</a></li>
                <li><a href='/Vistas/GestionarBandejaSols.aspx'>Gestión de bandeja de solicitudes</a></li>
                <li><a href='/Vistas/VisualizarEspacios.aspx'>Ver disponibilidad de espacios</a></li>
                <li><a href='/Vistas/SolicitarReservacion.aspx'>Solicitar reservación</a></li>
                <li><a href='#'>Generar reportes</a>
                    <ul>
                        <li class='dcjq-current-parent'><a href='/Vistas/ReportesCarrera.aspx'>Reporte de aulas por carrera</a></li>
                        <li class='dcjq-current-parent'><a href='#'>Reporte de aulas por escuela</a></li>
                    </ul>
                </li>
            ");
            this.literalMenu.Text = htmlOpciones;
        }

        // - crearMenuAdmin: Crea un menu en la literal, si es un administrador.
        public void crearMenuAdmin()
        {
            // - Si es un Administrador
            String htmlOpciones = String.Format(@"
                <li><a href='/Vistas/GestionarBandejaSols.aspx'>Gestionar bandeja de solicitudes</a></li>
                <li><a href='/Vistas/VisualizarEspacios.aspx'>Ver disponibilidad de espacios</a></li>
                <li><a href='/Vistas/SolicitarReservacion.aspx'>Solicitar reservación</a></li>
                <li><a href='#'>Generar reportes</a>
                    <ul>
                        <li class='dcjq-current-parent'><a href='/Vistas/ReportesCarrera.aspx'>Reporte de aulas por carrera</a></li>
                        <li class='dcjq-current-parent'><a href='#'>Reporte de aulas por escuela</a></li>
                    </ul>
                </li>
            ");
            this.literalMenu.Text = htmlOpciones;
        }

        // - crearMenuFuncionario: Crea un menu en la literal, si es un funcionario.
        public void crearMenuFuncionario()
        {
            // - Si es un funcionario
            String htmlOpciones = String.Format(@"
                <li><a href='/Vistas/VisualizarEspacios.aspx'>Ver disponibilidad de espacios</a></li>
                <li><a href='/Vistas/SolicitarReservacion.aspx'>Solicitar reservación</a></li>
                <li><a href='/Vistas/BandejaFuncionario.aspx'>Bandeja de solicitudes realizadas</a></li>
            ");
            this.literalMenu.Text = htmlOpciones;
        }


        // - GET'S & SET'S -------------------------
        public String get_opcionesMenuXUser()
        {
            return _opcionesMenuXUser;
        }

        public void set_opcionesMenuXUser(String p_opcionesHTML)
        {
            this._opcionesMenuXUser = null;
            _opcionesMenuXUser = p_opcionesHTML;
        }
        //----
        public int get_tipoUsuario()
        {
            return _tipoUsuario;
        }

        public void set_tipoUsuario(int p_TipoUser)
        {
            _tipoUsuario = p_TipoUser;
        }
    }
}